package com.neu.credit.creditscore.entity.parking;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.time.LocalDateTime;
import java.util.Date;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Getter;
import lombok.Setter;

@Getter
@Setter
@TableName("parking_appointments")
@Schema(name = "ParkingAppointments", description = "停车预约信息表")
public class ParkingAppointments {

    //待使用
    public final static int PREORDER = 0;
    //使用中
    public final static int USING = 1;
    //待支付
    public final static int WILL_PAY = 2;
    //已完成
    public final static int DONE = 3;
    //逾期未使用
    public final static int OVERDUE_UNUSED = 4;

    @Schema(description = "预约ID，自增主键")
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    @Schema(description = "预约编号（唯一标识）")
    private String appointmentNumber;

    @Schema(description = "用户ID")
    private Integer userId;

    @Schema(description = "停车场ID")
    private Integer parkingLotId;

    @Schema(description = "车位编号")
    private String spaceNum;

    @Schema(description = "预约开始时间")
    private Date startTime;

    @Schema(description = "预约结束时间")
    private Date endTime;

    @Schema(description = "预约状态 0-默认，1-待使用，2-使用中 3-已完成")
    private Integer appointmentStatus;

    @Schema(description = "创建时间")
    private Date createdAt;

    @Schema(description = "更新时间")
    private Date updatedAt;
}